草庐IT

C++ Qt 返回空 QString

全部标签

c++ - 如何使用程序集获取返回 float 的 __stdcall 函数的结果

我有一个汇编例程,它以通用方式调用已知使用stdcall约定的函数并返回一个float。编码框架使用此函数将stdcall函数公开给脚本语言。背景这是在MinGW4.3、Win32上编译的使用GNU内联汇编的函数:inlineuint64_tstdcall_invoke_return_float(intargs_size_bytes,constchar*args_ptr,void*func_ptr){uint64_tresult;assert(0==args_size_bytes%4||!"argumentsizemustbeamultipleof4bytes");#ifdefined

c++ - Qt 应用程序在使用文件打开对话框后将焦点切换到不同的应用程序

我正在将我的一个Qt应用程序在OSX上开发后移植到Windows。我在OSX上没有这个问题,但它现在在Windows8下发生了。当我用QFileDialog::getOpenFileName()打开并选择一个文件时,焦点切换到其他应用程序,我有alt-tab回到我的。一旦在对话框中选择了文件而不是这样做,我如何让Qt恢复到主应用程序? 最佳答案 您可能只是忘记为QFileDialog设置parent-您需要将指向当前窗口的指针传递给getOpenFileName:QStringfileName=QFileDialog::getOpe

windows - 使用 CMake 查找 Qt : Missing moc, uic, rcc

我正在尝试修复自定义构建的Qt的安装。我正在使用来自thisverysimilarquestion的qt.conf.但是,CMake2.8.7仍然无法找到moc、uic和rcc。CMakeErroratC:/ProgramFiles(x86)/CMake2.8/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:97(MESSAGE):CouldNOTfindQt4(missing:QT_MOC_EXECUTABLEQT_RCC_EXECUTABLEQT_UIC_EXECUTABLE)(foundsuitableexa

windows - 为什么 Createprocess 返回 NULL?

我有以下代码`STARTUPINFOAcif={sizeof(cif)};PROCESS_INFORMATIONpi;CreateProcessA("C:\Windows\notepad.exe",NULL,NULL,NULL,FALSE,NULL,NULL,NULL,&cif,&pi);cout它输出NULL,为什么?怎么了?如果我写`STARTUPINFOcif={sizeof(cif)};PROCESS_INFORMATIONpi;CreateProcess(L"C:\Windows\notepad.exe",NULL,NULL,NULL,FALSE,NULL,NULL,NULL

windows - QT 5.1.1 : Checkbox in QWebview shows strange behavior under Win 7 (x64)/Win 8

我的项目在基于Qt5.1.1(MSVC2010,32位)的QTCreator2.8.1中,并使用工具包编译:QT5.1.1MSVC201032位。问题是webview在Win7(x64)或Win8下显示出一些奇怪的行为。第一个复选框始终具有焦点。如果我将鼠标悬停在第一个复选框上,第二个复选框就会“突出显示”。此外,我无法选中第一个复选框,如果我单击它,第二个复选框将被选中,而第一个复选框将保持未选中状态。在WinXP下使用相同的exe或为Linux或Mac重新编译的项目不会发生错误。HTML:Test1Test2C++/QT5中的QWebview部分:QVariantresult=th

c++ - 使用 MinGW 下载 Qt

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我正在尝试从以下位置使用MinGW下载Qt:网址:http://qt-project.org/downloads链接:Qt5.2.1forWindows32位(MinGW4.8、OpenGL、634MB)(信息)但是速度极慢。谁能推荐一

windows - 通过命令输出中返回的 PID 终止进程

我正在处理一个批处理脚本,我需要杀死第一行的PID“chrome.exepid:2880TSH\C400677”有人可以让我知道我该怎么做吗?我想我需要使用for循环。首先我需要保存以下命令的输出,然后获取第一行并从那里获取PID并将其终止。有没有可能我用一个命令就可以完成。使用下面的命令并一个一个地杀死所有进程的PID。?C:\Users\C400677\Desktop\Handle>Handle.exe-pchrome|find/I"pid"chrome.exepid:2880TSH\C400677chrome.exepid:6404TSH\C400677chrome.exepid

windows - 为什么另一个线程中的阻塞 IO 会阻止 CreateWindowEx() 返回

我有一个非常简单的Windows控制台应用程序,它首先创建一个线程来处理stdin上的输入。它使用main()中的CreateThread()创建线程,线程做的第一件事是调用getchar()并阻塞,等待。然后main()使用RegisterClass()注册一个窗口类,并调用CreateWindowEx()创建一个不可见的消息窗口。但是CreateWindowEx()永远不会返回。如果我删除线程中的getchar()并将其替换为while(1)Sleep(1000);,一切正常。如果我将Sleep(1000);添加到线程函数的开头,CreateWindowEx()调用会成功,但随后线

windows - SetConsoleActiveScreenBuffer 使 ReadConsole 返回 ERROR_SHARING_VIOLATION

当我使用创建的缓冲区调用SetConsoleActiveScreenBuffer()时,它似乎使ReadConsole停止使用ERROR_SHARING_VIOLATION。我检查了句柄权限,据我所知,它们是正确的。如果我注释掉SetConsoleActiveScreenBuffer行,输入将完美运行。我可能在这里做错了什么?我还尝试过使用ReadFile而不是ReadConsole,并使用CreateFile而不是GetStdHandle获取输入缓冲区。两种方式,都会出现同样的错误。#includeintmain(){void*oldScreenBuffer;void*screenB

c# - 光标位置函数返回错误值

我有一个2160x1440的小屏幕,所以我在Windows中使用150%缩放比例。使用Cursor.Position甚至GetCursorPos/GetPhysicalCursorPos我总能在屏幕上获得缩放后的坐标(例如(2160,1440)变成(1440,960))。我确信这是最近的更改,因为我之前在此屏幕上使用过Cursor.Position没有问题。如何解释这种行为?为什么GetCursorPos和GetPhysicalCursorPos返回相同的值,而它们在我的屏幕上应该不同?最重要的是,使用DPI调整这些函数返回的值是获得正确值的唯一方法吗? 最